using System;
using System.Linq;
using System.Linq.Expressions;
using EBE.COM.Core.Interfaces;

namespace EBE.COM.Core.Test.Categories
{
  public class FakeCategoryRepository : ICategoryRepository
  {
    private readonly ICategoryFactory _factory;

    public FakeCategoryRepository(ICategoryFactory factory)
    {
      _factory = factory;
    }

    public IQueryable<ICategory> FindAll()
    {
      return _factory.MakeCategories();
    }

    public IQueryable<ICategory> Find(Expression<Func<ICategory, bool>> predicate)
    {
      throw new NotImplementedException();
    }

    public ICategory FindById(int id)
    {
      return _factory.MakeCategory(id);
    }

    public void Add(ICategory newEntity)
    {
      throw new NotImplementedException();
    }

    public void Remove(ICategory entity)
    {
      throw new NotImplementedException();
    }

    public void Update(ICategory entity)
    {
      throw new NotImplementedException();
    }
  }
}
